www.gusucode.com > 一个JSP CMS文章管理系统源码源码程序 > 一个JSP CMS文章管理系统源码/CMS4J/CMS4J/ROOT/js/divwindow/divdindow.js
var currentMoveObj = null; //当前拖动对象 var relLeft; //鼠标按下位置相对对象位置 var relTop; //最后一个显示的窗口ID var lastShowDivWinID = null; //最后一个显示的窗口是否要彻底关闭(下次重新加载) var lastShowDivWinIsReload = "false"; function divBoxDown(obj){ /** 先不让拖动 currentMoveObj = obj; //当对象被按下时,记录该对象 currentMoveObj.style.position = "absolute"; relLeft = event.x - currentMoveObj.style.pixelLeft; relTop = event.y - currentMoveObj.style.pixelTop; currentMoveObj.style.filter = "Alpha(opacity=60)"; //按下时对象透明 currentMoveObj.style.opacity = "0.6"; //firfox有效 **/ } function divBoxUp(obj){ /** 先不让拖动 currentMoveObj = obj; //当鼠标被释放时,记录该对象 currentMoveObj.style.filter = "Alpha(opacity=100)"; //恢复 currentMoveObj = null; //当鼠标释放时同时释放拖动对象 **/ } function divBoxMove(obj){ /** 先不让拖动 if(currentMoveObj != null){ currentMoveObj.style.pixelLeft=event.x-relLeft; currentMoveObj.style.pixelTop=event.y-relTop; } **/ } //关闭窗口 function closeDivWindow(){ //显示select控件 DispalySelect(1); //隐藏遮罩 hideMask(); //隐藏窗口 hideDivWindow(lastShowDivWinID,lastShowDivWinIsReload); } //页面遮罩对象 var MaskObj = null; //显示遮罩 function showMask(){ var Maskw,Maskh,Openw,Openh; Maskw = document.body.offsetWidth; Maskh = window.screen.height; //document.body.scrollHeight; Maskh = document.body.scrollHeight; //设置遮罩层 //只有第一次才创建这个遮罩层 if(null == MaskObj){ MaskObj = document.createElement("windowMask"); } MaskObj.id = "windowMask"; MaskObj.className = "div_window_mask"; MaskObj.style.width = Maskw + "px"; MaskObj.style.height = Maskh + "px"; document.body.appendChild(MaskObj); } //隐藏遮罩 function hideMask(){ var maskObj = document.getElementById("windowMask"); if(null != maskObj){ maskObj.style.width = "0px"; maskObj.style.height = "0px"; } } //隐藏窗口 function hideDivWindow(winID,isReload){ var winObj = document.getElementById(winID); if(null != winObj){ //如果是需要下载重新加载,则在关闭窗口时,彻底删除窗口对象 if(isReload == "true"){ winObj.removeNode(true); //移除窗口,以及所有子节点 }else{ winObj.style.display = "none"; } } } //显示窗口,使用AJAX方法动态读取某URL中的输出内容做为窗口的内容 function showDivWindowForURL(winID,width,height,isReload,title,url){ lastShowDivWinID = winID; lastShowDivWinIsReload = isReload; var contentObj = showDivWindow(winID,width,height,isReload,title,"窗口加载中.."); var ajax=new AJAXRequest; //使用这种方法,可以直接将输出innerhtml某对象 //ajax.get('../../getmodule?ajax=true&module=' + url,contentObj); //由于要支持在innerHTML中,支持JS,所以用了一个 setInnerHTML 方法 ajax.get('../../getmodule?ajax=true&module=' + url,function(obj){setInnerHTML(contentObj, obj.responseText);}); } /** * 显示窗口 **/ function showDivWindow(winID,width,height,isReload,title,content){ //隐藏select控件 DispalySelect(0); //显示遮罩 showMask(); var PopObj = null; if(!document.getElementById(winID)){ //如果没有winID,则创建 PopObj = document.createElement(winID); PopObj.id = winID; PopObj.className = "div_window_box"; PopObj.onselectstart = function(){return false;}; PopObj.style.left = (window.screen.width - width) / 2 + "px"; PopObj.style.top = (-160 + window.screen.height - height) / 2 +"px"; PopObj.style.width = width+10 + "px"; PopObj.style.height = height+20 + "px"; document.body.appendChild(PopObj); //开始 var popObjHTML = "<div class='div_window_box_border' onMouseDown='divBoxDown(this.parentNode)' onMouseUp='divBoxUp(this.parentNode)' onMouseMove='divBoxMove(this.parentNode)'>"; //标题行 popObjHTML = popObjHTML + "<div class='div_window_box_oper_bar'><div class='div_window_box_oper_bar_title'>"+title+"</div><div class='div_window_box_oper_bar_button'><div class='div_window_box_oper_bar_button_close' onclick='closeDivWindow();'> </div></div></div>"; //内容 popObjHTML = popObjHTML + "<div class='div_window_box_content' id='div_window_box_content'>"+content+"</div>"; //结束 popObjHTML = popObjHTML + "</div>"; PopObj.innerHTML = popObjHTML; //设置内容区的高度 //document.getElementById("div_window_box_content").style.height = (height) + "px"; }else{ //如果有,则直接获得 PopObj = document.getElementById(winID); //关闭时,设置为了隐藏,这时,又要显示,所以再设置为显示 PopObj.style.display="block"; } //返回内容容器对象 return document.getElementById("div_window_box_content"); } //显示和隐藏select控件 function DispalySelect(val){ var dispalyType; var arrdispalyType=["hidden","visible"]; var arrObjSelect=document.getElementsByTagName("select"); for (i=0;i<arrObjSelect.length;i++){ arrObjSelect[i].style.visibility=arrdispalyType[val]; } }